package flash.events;

extern class MouseEvent extends Event {
	var altKey : Bool;
	var buttonDown : Bool;
	var ctrlKey : Bool;
	var delta : Int;
	@:require(flash10) var isRelatedObjectInaccessible : Bool;
	var localX : Float;
	var localY : Float;
	@:require(flash11_2) var movementX(require flash11_2,require flash11_2) : Float;
	@:require(flash11_2) var movementY(require flash11_2,require flash11_2) : Float;
	var relatedObject : flash.display.InteractiveObject;
	var shiftKey : Bool;
	var stageX(default,null) : Float;
	var stageY(default,null) : Float;
	function new(type : String, ?bubbles : Bool, ?cancelable : Bool, ?localX : Float, ?localY : Float, ?relatedObject : flash.display.InteractiveObject, ?ctrlKey : Bool, ?altKey : Bool, ?shiftKey : Bool, ?buttonDown : Bool, ?delta : Int) : Void;
	function updateAfterEvent() : Void;
	static var CLICK : String;
	@:require(flash11_2) static var CONTEXT_MENU(require flash11_2,require flash11_2) : String;
	static var DOUBLE_CLICK : String;
	@:require(flash11_2) static var MIDDLE_CLICK(require flash11_2,require flash11_2) : String;
	@:require(flash11_2) static var MIDDLE_MOUSE_DOWN(require flash11_2,require flash11_2) : String;
	@:require(flash11_2) static var MIDDLE_MOUSE_UP(require flash11_2,require flash11_2) : String;
	static var MOUSE_DOWN : String;
	static var MOUSE_MOVE : String;
	static var MOUSE_OUT : String;
	static var MOUSE_OVER : String;
	static var MOUSE_UP : String;
	static var MOUSE_WHEEL : String;
	@:require(flash11_3) static var RELEASE_OUTSIDE(require flash11_3,require flash11_3) : String;
	@:require(flash11_2) static var RIGHT_CLICK(require flash11_2,require flash11_2) : String;
	@:require(flash11_2) static var RIGHT_MOUSE_DOWN(require flash11_2,require flash11_2) : String;
	@:require(flash11_2) static var RIGHT_MOUSE_UP(require flash11_2,require flash11_2) : String;
	static var ROLL_OUT : String;
	static var ROLL_OVER : String;
}
